package com.zhn;

/**
 * 给定一个二叉树的 根节点 root，请找出该二叉树的 最底层 最左边 节点的值。
 *
 * 假设二叉树中至少有一个节点。
 */

import java.util.LinkedList;
import java.util.Queue;

public class FindBottomLeftValue {
    public int findBottomLeftValue(TreeNode root) {
        Queue<TreeNode> que = new LinkedList<>();
        que.add(root);
        int res = 0;
        while(!que.isEmpty()){
            int len = que.size();
            for(int i = 0; i < len; i++){
                TreeNode poll = que.poll();
                if(i == 0){
                    res = poll.val;
                }
                if(poll.left != null) que.add(poll.left);
                if(poll.right != null)que.add(poll.right);
            }
        }
        return res;
    }
}
